package com.renjiyue.Day1;

/**
 * 子类只能继承非私有化的属性
 * 子类可以继承父类的内容
 * 父类不可以调用子类的内容
 *
 * 子类　造方法会默认访问父类无参的构造方法（并且必须放在第一句）
 * super(); 调用父类的无参构造
 * this() super() 不能同时放在一个构造方法中
 * 如果父类没有无参的构造方法，那么子类必须指定调用父类有参数的构造方法
 */
public class Dog extends Animal {

    public Dog(){
        super();
        //this("name");
        System.out.println("无参的构造方法");
    }

    public Dog(String name){
//        this(); //相当于我们在调用　无参构造方法  , 调用其它构造方法时，　必须是构造方法的第一句
        System.out.println("有参的构造方法");
    }


    public String toString(){
        return super.toString();
    }

//    public Dog(){
//
//    }
//
    protected void speak(){
        System.out.println("旺旺叫");
        jump();
    }

    public void speak(String str){
        System.out.println("");
    }

    public void speak(int str){

    }
    public void speak(String i, int str){

    }

    public void speak(int i, String str){

    }
    public void jump(){
        System.out.println("狗急跳墙");
    }
}
